#pragma once
#include "framework.h"
#include <vector>
#include <fstream>

using namespace poly;

class Game : public IGame
{
public:
	Game( HINSTANCE hInst, HWND hWnd );
	~Game();

	virtual void onCreateGraphics( D3DDevice device );
	virtual void onResetGraphics( D3DDevice device );

	virtual void onFrameMove(float dt);
	virtual void onFrameRender(float dt);

	virtual void onLostGraphics();
	virtual void onDestroyGraphics();

	void getWindowSettings(int &, int &, bool &, bool &, bool &);

private:
	D3DDevice	m_d3dDevice;

	SInput		m_input;
	Camera		m_camera;

	vector<RigidBody> m_bodies;

	poly::Polygon	m_polygon;
	PolygonView		m_polygonView;
	std::ofstream	m_output;
};
